/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.trabajo.modelo;

import com.trabajo.modelo.entidad.Producto;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;

/**
 *
 * @author wilmer noe
 */
public class ProductoDAO {
    private EntityManagerFactory emf;
    private EntityManager em;

    public ProductoDAO() {
        emf= Persistence.createEntityManagerFactory("com.mycompany_mavenproject2_war_1.0-SNAPSHOTPU");
        em= emf.createEntityManager();
    }
    
    public boolean insertarProducto(Producto p) {
        boolean res= false;
        try {
            em.getTransaction().begin();
            em.persist(p);
            em.getTransaction().commit();
            res= true;
        } catch (Exception ex) {
            em.getTransaction().rollback();
        }
        return res;
    }
    
    public Producto buscarProducto(String idProducto) {
        Producto p= em.find(Producto.class, idProducto);
        return p;
    }
    
    public List<Producto> getListaProductos() {
        Query q= em.createQuery("SELECT p FROM producto p");
        return q.getResultList();
    }
    
    public boolean eliminarProducto(String idProducto) {
        boolean res= false;
        try {
            em.getTransaction().begin();
            Producto p= em.find(Producto.class, idProducto);
            if(p != null) {
                em.remove(p);
            }
            em.getTransaction().commit();
            res= true;
        } catch (Exception ex) {
            em.getTransaction().rollback();
        }
        return res;
    }
}